# -*- coding: utf-8 -*-

from django.db import models

class Grupo(models.Model):
    nome = models.CharField(max_length=255)
    permissoes = models.ManyToManyField('Permissao')
    user_responsavel = models.ForeignKey('Usuario', editable=False, related_name='+', null=True)

    class Meta:
        app_label = 'usuarios'


    def tem_permissao(self, acao):
        # Verifica as permissões do grupo.
        for p in self.permissoes.all():
            if p.tem_permissao(acao):
                return True

        # Não tem permissão.
        return False

    def __unicode__(self):
        return u"{0}".format(self.nome)
